1. Technical Field of the Invention
The present invention relates to a moving object detecting method of, a moving object detecting apparatus for, and a moving object detecting computer program product for detecting optical flow segments indicative of loci of one or more moving objects apparently moved in a moving picture sequence including a plurality of picture frames each indicating the one or more moving objects at a time point to ensure that the moving objects are correctly detected
2. Description of the Related Art
Up until now, there have been proposed a wide variety of moving object detecting methods of detecting optical flow segments indicative of apparent motion, i.e., loci of one or more moving objects apparently moved in a moving picture sequence such as, for example but not limited to, motion video pictures, including a plurality of picture frames each indicating the one or more moving objects at a time point to ensure that the moving objects are detected.
The optical flow segments are intended to mean the apparent motion, i.e., loci of a moving object in the moving picture sequence including a plurality of picture frames each indicating the moving object at a time point as shown in FIG. 8. A moving object 810 is indicated by, for example, a current picture frame forming part of the moving picture sequence at a current time point. A moving object 820 is indicated by a past picture frame forming part of the moving picture sequence at a past time point earlier than the current time point. There may be provided a plurality of picture frames between the past picture frame and the current picture frame in a time interval starting from the past time point to the current time point. The term “current picture frame” and “current time point” as used herein are respectively intended to mean a picture frame later than the past picture frame and a time point later than the past time point, but not limited to the present picture frame or the present time point in the literal sense of the words. Optical flow segments 830 indicate the apparent motion of the moving object, i.e., the loci of the moving object apparently moved in the moving picture sequence in the time interval starting from the past time point to the current time point. Here, the logical addition of an area in which the moving object 810 occupies in the current picture frame and an area in which the moving object 820 occupies in the past picture frame will be hereinlater referred to as “an optical flow generating area 840”.
The optical flow segments are typically detected and generated through the operations of: (A) dividing the current picture frame into a plurality of blocks each containing at least one picture element; (B) dividing the past picture frame into a plurality of blocks each containing at least one picture element; (D) sequentially comparing each of the blocks of the past picture frame with blocks of the current picture frame to select a block of the current picture frame apparently placed in the vicinity of the block of the past picture frame and having the highest degree of similarity with the block of the past picture frame from among the blocks of the current picture frame apparently placed in the vicinity of the block of the past picture frame; and (D) detecting and generating optical flow segments each starting from a block of the past picture frame to a block of the current picture frame apparently placed in the vicinity of the block of the past picture frame and having the highest degree of similarity with the block of the past picture frame from among the blocks of the current picture frame apparently placed in the vicinity of the block of the past picture frame. The degree of similarity may be assessed on the basis of, for example but not limited to, mean absolute differences (MAD), root mean square differences (RMSD), or correlation values.
The aforesaid operations, however, require a large amount of computational processes and time. This leads to the fact that the aforesaid operations are generally performed only in blocks of the current picture frame apparently placed in the vicinity of a block of the past picture frames by, for example but not limited to, a predetermined number of blocks or less, for example, a couple of blocks or less to detect and generate optical flow segments. This means that the operations (C) and (D) are performed through the operations of sequentially comparing each of the blocks of the past picture frame with the blocks of the current picture frame to select a block of the current picture frame apparently placed in the vicinity of the block of the past picture frame and having the highest degree of similarity with the block of the past picture frame from among the blocks of the current picture frame apparently placed in the vicinity of the block of the past picture frame by a predetermined number of blocks or less; and detecting and generating optical flow segments each starting from a block of the past picture frame to a block of the current picture frame apparently placed in the vicinity of the block of the past picture frame and having the highest degree of similarity with the block of the past picture frame from among the blocks of a detectable area, i.e., the blocks of the current picture frame apparently placed in the vicinity of the block of the past picture frame by a predetermined number of blocks or less.
A part of a moving object apparently moved to, for instance, an undetectable area away from the detectable area, i.e., the blocks of the current picture frame apparently placed in the vicinity of the blocks of the past picture frame indicative of the part of the moving object at the past time point by more than the predetermined number of blocks, the aforesaid operations may inaccurately detect and generate optical flow segments each starting from a block of the past picture frame indicative of the part of the moving object at the past time point to a block of the current picture frame apparently placed in the vicinity of the block of the past picture frame and having the highest degree of similarity with the block of the past picture frame among the blocks of the current picture frame apparently placed in the vicinity of the block of the past picture frame by a predetermined number of blocks or less, which is not indicative of the part of the moving object.
This leads to the fact that the aforesaid operations are required to shorten the time interval starting from a past time point to a current time point to detect and generate optical flow segments indicative of apparent motion of a moving object moving at a high moving speed so that the moving object apparently moved in the moving picture sequence would remain in the detectable area, i.e., the blocks of the current picture frame at the current time point apparently placed in the vicinity of the block of the past picture frame at the past time point by a predetermined number of blocks or less while, on the other hand, the aforesaid operations are required to lengthen the time interval starting from a past time point to a current time point to detect and generate optical flow segments indicative of apparent motion of a moving object moving at a low moving speed so that the optical flow segments indicative of the apparent motion of the moving object apparently moved in the time interval would be detected and generated.
One typical type of the conventional moving object detecting method is disclosed in Japanese Patent Application Laid-Open Publication No. 16776/1997. In order to meet the above requirements of adaptively changing the time interval in accordance with the moving speed of the moving object, the aforesaid conventional moving object detecting method comprises the steps of: (a) inputting a current picture frame indicating a moving object at a current time point; (b) inputting a past picture frame indicating the moving object at a past time point; (c) detecting and generating optical flow segments indicative of apparent motion, i.e., loci of the moving object apparently moved from the past time point to the current time point; (d) evaluating the degree of validity of the optical flow segments thus detected and generated; and (e) controlling the time interval starting from the past time point to the current time point on the basis of the result of evaluation made in the step (d).
The aforesaid conventional moving object detecting method, however, encounters a drawback that the aforesaid conventional moving object detecting method can detect and generate optical flow segments indicative of loci of a moving object moved at a constant moving speed while, on the other hand, the aforesaid conventional moving object detecting method cannot accurately detect and generate optical flow segments indicative of loci of a plurality of moving objects apparently moved at variable moving speeds.
Furthermore, the aforesaid conventional moving object detecting method encounters another drawback that the conventional moving object detecting method may generate false optical flow segments which inaccurately indicate the apparent motion, i.e., loci of a moving object apparently moved at a moving speed so high with respect to the time interval starting from a past time point to a current time point that the moving object apparently moved away from a detectable area in which optical flow segments can be properly detected and generated, to an undetectable area of the current picture frame apparently placed in the vicinity of the blocks of the past picture frame indicative of the moving object at the past time point by more than the predetermined number of blocks, resulting in the fact that the aforesaid conventional moving object detecting method may inaccurately detect and generate optical flow segments each starting from a block of the past picture frame indicative of a part of the moving object to a block of the current picture frame apparently placed in the vicinity of the block of the past picture frame and having the highest degree of similarity with the block of the past picture frame among the blocks of the current picture frame apparently placed in the vicinity of the block of the past picture frame by a predetermined number of blocks or less, which is not indicative of any part of the moving object as shown in FIG. 9. In FIG. 9, a moving object 910 indicated by, for example, a current picture frame is apparently moved from a moving object 920 indicated by a past picture frame earlier than the current picture frame. The logical addition of an area in which the moving object 910 occupies in the current picture frame and an area in which the moving object 920 occupies in the past picture frame is an optical flow generating area 940. Assuming that the moving object 910 is placed in an undetectable area in which optical flow segments cannot be properly detected and generated, the optical flow generating area 940 may contain an area in which false optical flow segments may be detected and generated, which will be hereinlater referred to as “false optical flow generating area 930” in which false optical flow segments inaccurately indicating loci of a moving object are detected and generated.
The present invention is made with a view to overcoming the previously mentioned drawbacks inherent to the conventional moving object detecting method and the conventional moving object detecting apparatus.